#ifndef _AMERICO_SYSTEM_TIME_H_
#define _AMERICO_SYSTEM_TIME_H_

#include <vector>
#include "timer.h"
#include <windows.h>

namespace Clock
{
	class SystemTimer
	{
	public:
		SystemTimer();
		~SystemTimer();

		void Init();

		void AttachTimer(Timer *aTimer);

		bool Update();

		Time GetTotalTime() const;
		Time GetElapsedTime() const;
	private:
		std::vector<Timer*> myAttachedTimers;
		Time myCurrentTime;
		Time myElapsedTime;

		LARGE_INTEGER myPerformanceFrequency;
		LARGE_INTEGER myClockStarted;
		LARGE_INTEGER myClockChecked;
	};
};

#endif
